package com.hgkj.cloud.base.scheme.table;

import com.hgkj.cloud.base.scheme.ClsAnswerRequest;
import com.hgkj.cloud.base.scheme.ClsAnswerResult;
import com.hgkj.cloud.base.scheme.ClsScore;

import java.util.Map;

/**
 * 八、艾森克个性测验(儿童)（Xepq）共88题
 */
public class Table8 extends AbstractTable implements TableCalculate{
    String code = "Xepq";

    @Override
    public String getCode() {
        return code;
    }

    @Override
    public ClsAnswerResult calc(ClsAnswerRequest answer) {
        return GetXepqFactorScore(answer);
    }

    @Override
    public String[] report(Map map) {
        return new String[0];
    }

    private static ClsAnswerResult GetXepqFactorScore(ClsAnswerRequest answer) {
        ClsAnswerResult result = new ClsAnswerResult();
        result.setMessage("");
        result.setType(answer.getType());
        result.setUuid(answer.getUuid());
        try {
            // 1正确题数
            int MAX_NUM = 88;
            // 1精神质(p)，2内外向(e)，3神经质(n)，4掩饰程度(l)
            int intI;
            String[] strAnswer_c = answer.getAnswer().split(g_sChar);
            if (strAnswer_c.length > 1) {
                for (intI = 1; intI < strAnswer_c.length; intI++) {
                    strAnswer_c[intI] = strAnswer_c[intI].trim();
                }
            }

            String[] sAnswer = strAnswer_c[0].toString().split(g_nChar);

            if (sAnswer.length != MAX_NUM) {
                result.setMessage("答案数量不符！");
                return result;
            }

            int i, j, k;

            // 共2组，第一组0,1；第二组1,0
            String[][] strNumberA = { { "30,66,77", "9,49", "", "4,11,16,20,40,67,70,73,80,82,87" },
                    { "3,7,12,15,23,32,35,39,43,47,51,53,55,59,60",
                            "1,5,13,17,19,21,25,28,33,37,41,45,57,61,64,68,71,75,79,83,85,86,88",
                            "2,6,10,14,18,22,26,29,34,38,42,46,50,54,58,62,65,69,72,74,76,81,84",
                            "8,24,27,31,36,44,48,52,56,63,78" } };

            String[] strSubA;
            int[][] intScoreA = { { 0, 1 }, { 1, 0 } };
            // 标准分的全部内容
            String strStandard = "";

            // 按标准分得到“指导意见”
            String[] vDoctorIdeaA = new String[4];

            float[][] vFactorA = new float[4][2]; // 实际为4个因子
            for (i = 0; i < vFactorA.length; i++) {
                for (j = 0; j < vFactorA[1].length; j++) {
                    vFactorA[i][j] = 0;
                }
            }

            // “原始分”
            for (i = 0; i < strNumberA.length; i++) {
                for (j = 0; j < strNumberA[1].length; j++) {
                    if (strNumberA[i][j].length() > 0) {
                        strSubA = strNumberA[i][j].split(",");
                        for (k = 0; k < strSubA.length; k++) {
                            vFactorA[j][0] += intScoreA[i][Integer.valueOf(sAnswer[Integer.valueOf(strSubA[k]) - 1])
                                    - 1];
                        }
                    }
                }
            }

            // “标准分”内容
            int intSex = answer.getSex();
            float floAge = answer.getAge();
            if (intSex == 1) {
                if (floAge <= 7) {
                    strStandard = "100,19,26,24,23,95,18,26,24,23,90,17,26,24,23,90,16,26,24,23,85,15,26,23,23,"
                            + "85,15,26,22,23,80,14,26,21,23,80,13,26,20,23,75,12,25,19,23,75,12,25,18,23,70,11,24,17,22,"
                            + "70,11,23,16,22,65,10,22,15,21,65,9,21,14,20,65,9,21,13,20,60,8,20,12,19,60,8,19,11,18,"
                            + "55,7,18,10,17,55,6,17,9,16,50,5,16,8,15,50,5,15,7,14,45,4,14,6,13,45,3,13,5,13,"
                            + "40,2,12,4,12,40,2,11,3,11,40,2,11,2,11,35,1,10,1,10,35,1,9,1,9,30,0,8,0,8,30,0,7,0,7,25,0,6,0,6,"
                            + "25,0,5,0,5,20,0,4,0,4,20,0,3,0,3,15,0,2,0,2,15,0,1,0,1,10,0,0,0,0";
                } else if (7 < floAge && floAge <= 8) {
                    strStandard = "100,19,26,24,23,95,18,26,24,23,90,17,26,23,23,90,16,26,22,23,85,15,26,21,23,"
                            + "85,15,26,20,23,80,14,26,19,23,80,13,26,18,23,75,12,26,17,23,75,12,26,16,23,70,11,25,15,22,"
                            + "70,10,25,14,22,65,9,24,13,21,65,9,23,12,20,65,9,23,12,20,60,8,22,11,19,60,7,21,10,18,"
                            + "55,6,20,9,17,55,6,19,8,17,50,5,18,7,16,50,4,17,6,15,45,3,16,5,14,45,3,15,4,13,40,2,14,3,12,"
                            + "40,1,13,2,11,40,1,13,2,11,35,0,12,1,10,35,0,11,1,10,35,0,10,1,10,30,0,9,0,9,30,0,8,0,8,"
                            + "25,0,7,0,7,25,0,6,0,6,20,0,5,0,5,20,0,4,0,5,15,0,3,0,4,15,0,2,0,3,10,0,1,0,2,10,0,1,0,1,5,0,0,0,0";
                } else if (8 < floAge && floAge <= 9) {
                    strStandard = "95,19,26,24,23,90,18,26,24,23,90,17,26,24,23,85,16,26,23,23,85,16,26,23,23,80,15,26,22,23,"
                            + "80,14,26,21,23,75,13,25,20,23,75,13,25,19,23,70,12,24,18,23,70,11,24,17,23,70,11,24,16,23,"
                            + "65,10,23,15,22,65,9,22,14,21,60,8,21,13,20,60,8,21,13,19,60,8,20,12,18,55,7,19,11,17,"
                            + "55,6,18,10,16,55,6,18,10,15,50,5,17,9,14,50,4,17,8,13,50,4,17,7,13,45,3,16,6,12,45,3,15,5,11,"
                            + "45,3,15,5,10,40,2,14,4,9,40,1,13,3,8,35,0,12,2,7,35,0,12,1,6,35,0,12,1,5,30,0,11,0,4,30,0,10,0,3,"
                            + "30,0,10,0,2,25,0,9,0,1,25,0,8,0,1,20,0,7,0,0,15,0,6,0,0,15,0,5,0,0,10,0,4,0,0,10,0,3,0,0,"
                            + "5,0,2,0,0,0,0,1,0,0,0,0,0,0,0";
                } else if (9 < floAge && floAge <= 10) {
                    strStandard = "100,19,26,24,23,95,18,26,24,23,95,17,26,24,23,90,16,26,24,23,90,15,26,24,23,85,14,26,23,23,"
                            + "80,13,26,22,23,80,13,26,21,23,75,12,26,20,23,75,11,26,19,23,75,11,26,18,23,70,10,25,17,23,"
                            + "70,10,25,16,23,65,9,24,15,22,65,8,23,14,21,60,7,22,13,20,60,7,22,13,19,60,7,22,12,18,55,6,21,11,17,"
                            + "55,6,20,10,16,55,6,20,9,16,50,5,19,8,15,50,4,18,8,14,50,4,18,7,14,45,3,17,6,13,45,3,16,5,12,"
                            + "45,3,16,5,11,40,2,15,4,10,40,1,14,3,9,40,1,14,2,9,35,0,13,1,8,35,0,13,1,7,30,0,12,0,6,30,0,11,0,5,"
                            + "30,0,11,0,4,25,0,10,0,3,25,0,9,0,2,20,0,8,0,1,20,0,7,0,1,15,0,6,0,0,15,0,5,0,0,10,0,4,0,0,"
                            + "5,0,3,0,0,5,0,2,0,0,0,0,1,0,0,0,0,0,0,0";
                } else if (10 < floAge && floAge <= 11) {
                    strStandard = "100,19,26,24,23,95,18,26,24,23,90,17,26,24,23,85,16,26,23,23,85,15,26,23,23,80,14,26,22,23,"
                            + "80,14,26,21,23,75,13,26,20,22,75,12,26,19,21,70,11,25,18,20,70,11,25,17,20,65,10,24,16,19,"
                            + "65,9,23,15,18,65,9,23,14,18,60,8,22,13,17,60,8,22,12,16,55,7,21,11,15,55,7,20,10,14,50,6,19,9,13,"
                            + "50,5,19,8,12,45,4,18,7,11,45,4,17,6,10,45,4,17,5,10,40,3,16,4,9,40,2,16,3,8,35,1,15,2,7,35,1,14,1,6,"
                            + "30,0,13,0,5,30,0,13,0,4,25,0,12,0,3,25,0,11,0,2,20,0,10,0,1,15,0,9,0,0,15,0,8,0,0,10,0,7,0,0,"
                            + "5,0,6,0,0,5,0,5,0,0,0,0,4,0,0,0,0,3,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0";
                } else if (11 < floAge && floAge <= 12) {
                    strStandard = "100,19,26,24,23,95,18,26,24,23,90,17,26,24,23,85,16,26,24,23,85,15,26,24,23,80,14,26,23,23,"
                            + "80,14,26,22,23,75,13,26,21,22,75,13,26,20,22,75,13,26,19,22,70,12,25,18,21,70,11,25,17,20,"
                            + "65,10,24,16,19,65,10,24,15,18,60,9,23,14,17,60,8,22,13,16,60,8,22,12,16,55,7,21,11,15,55,7,20,10,14,"
                            + "50,6,19,9,13,50,5,19,8,12,50,5,19,7,12,45,4,18,6,11,45,4,17,5,10,40,3,16,4,9,40,2,16,3,8,35,1,15,2,7,"
                            + "35,1,14,1,6,30,0,13,0,5,30,0,12,0,4,25,0,11,0,3,25,0,11,0,2,20,0,10,0,1,20,0,9,0,1,15,0,8,0,0,"
                            + "15,0,7,0,0,10,0,6,0,0,5,0,5,0,0,5,0,4,0,0,5,0,3,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0";
                } else if (12 < floAge && floAge <= 13) {
                    strStandard = "95,19,26,24,23,90,18,26,24,23,85,17,26,24,23,80,16,26,23,23,80,15,26,23,23,75,14,26,22,22,"
                            + "75,13,26,21,22,70,12,25,20,21,70,12,25,19,20,70,12,25,18,20,65,11,24,17,19,65,10,23,16,18,"
                            + "60,9,22,15,17,60,8,22,14,16,60,8,22,13,16,55,7,21,12,15,55,7,20,11,14,55,7,20,10,14,50,6,19,9,13,"
                            + "50,5,18,8,12,45,4,17,7,11,45,3,17,6,10,45,3,17,5,9,40,2,16,4,8,40,2,15,3,7,35,1,14,2,6,35,1,14,1,5,"
                            + "30,0,13,0,4,30,0,12,0,3,25,0,11,0,2,25,0,11,0,1,20,0,10,0,0,20,0,9,0,0,15,0,8,0,0,15,0,7,0,0,"
                            + "10,0,6,0,0,5,0,5,0,0,5,0,4,0,0,5,0,3,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0";
                } else if (13 < floAge && floAge <= 14) {
                    strStandard = "100,19,26,24,23,95,18,26,24,23,90,17,26,24,23,85,16,26,24,23,85,15,26,24,23,80,14,26,23,23,"
                            + "75,13,26,22,23,75,13,26,21,23,70,12,25,20,22,70,11,25,19,22,70,11,25,18,22,65,10,24,17,21,"
                            + "65,10,23,16,20,60,9,22,15,19,60,8,21,14,18,60,8,21,13,17,55,7,20,12,16,55,7,20,11,15,50,6,19,10,14,"
                            + "50,5,18,9,13,45,4,17,8,12,45,4,16,7,11,45,4,16,6,10,40,3,15,5,9,40,3,15,4,8,35,2,14,3,7,35,1,13,2,6,"
                            + "35,1,13,1,6,30,0,12,0,5,30,0,11,0,4,25,0,10,0,3,25,0,10,0,2,25,0,10,0,1,20,0,9,0,0,20,0,8,0,0,"
                            + "15,0,7,0,0,15,0,6,0,0,10,0,5,0,0,5,0,4,0,0,5,0,3,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0";
                } else {
                    strStandard = "100,19,26,24,23,95,18,26,24,23,90,17,26,24,23,90,16,26,24,23,85,15,26,24,23,80,14,26,23,23,"
                            + "80,13,26,23,23,75,12,26,22,23,75,12,26,21,23,70,11,25,20,22,70,11,25,19,21,70,11,25,18,21,"
                            + "65,10,24,17,20,65,9,23,16,19,60,8,22,15,18,60,8,21,14,17,60,8,21,13,17,55,7,20,12,16,55,6,19,11,15,"
                            + "55,6,19,11,14,50,5,18,10,13,50,5,17,9,12,50,5,17,8,12,45,4,16,7,11,45,3,15,6,10,45,3,14,6,9,"
                            + "40,2,13,5,8,40,2,12,4,7,40,2,12,3,7,35,1,11,2,6,35,1,10,1,5,30,0,9,0,4,30,0,8,0,3,30,0,8,0,2,"
                            + "25,0,7,0,1,25,0,6,0,1,20,0,5,0,0,20,0,4,0,0,15,0,3,0,0,15,0,2,0,0,10,0,1,0,0,5,0,0,0,0";
                }
            } else {
                if (floAge <= 7) {
                    strStandard = "110,19,26,24,23,105,18,26,24,23,100,17,26,24,23,95,16,26,23,23,95,15,26,22,23,90,14,26,21,23,"
                            + "90,14,26,20,23,85,13,26,19,23,85,13,26,18,23,80,12,25,17,23,80,11,25,16,23,75,10,24,15,23,"
                            + "75,10,23,15,23,70,9,22,14,22,70,9,22,13,22,65,8,21,12,21,65,7,21,11,21,60,6,20,10,20,60,6,20,9,20,"
                            + "55,5,19,8,19,55,5,18,7,19,50,4,17,6,18,50,3,17,5,17,45,2,16,4,16,40,1,15,3,15,40,1,15,2,15,35,0,14,1,14,"
                            + "35,0,14,1,13,30,0,13,0,12,30,0,12,0,12,25,0,11,0,11,20,0,10,0,10,15,0,9,0,9,15,0,9,0,8,10,0,8,0,7,"
                            + "10,0,7,0,7,5,0,6,0,6,0,0,5,0,5,0,0,4,0,4,0,0,3,0,3,0,0,2,0,2,0,0,1,0,1,0,0,0,0,0";
                } else if (7 < floAge && floAge <= 8) {
                    strStandard = "120,18,26,24,23,115,17,26,24,23,110,16,26,24,23,105,15,26,24,23,100,14,26,24,23,95,13,26,24,23,"
                            + "90,12,26,23,23,90,12,26,22,23,85,11,26,21,23,85,11,26,20,23,80,10,26,19,23,80,10,26,18,23,75,9,26,17,23,"
                            + "75,9,26,16,23,70,8,25,15,23,70,8,24,14,23,65,7,23,13,22,65,7,22,12,22,60,6,21,11,21,60,6,20,10,20,"
                            + "55,5,19,9,19,55,5,19,8,18,50,4,18,7,17,50,4,17,6,16,45,3,16,5,15,45,3,15,4,15,40,2,14,3,14,40,2,13,2,13,"
                            + "35,1,12,1,12,35,1,12,1,11,30,0,11,0,10,30,0,10,0,9,25,0,9,0,8,25,0,8,0,8,20,0,7,0,7,20,0,6,0,6,15,0,5,0,5,"
                            + "15,0,5,0,4,10,0,4,0,3,10,0,3,0,2,5,0,2,0,1,0,0,1,0,0,0,0,0,0,0";
                } else if (8 < floAge && floAge <= 9) {
                    strStandard = "120,18,26,24,23,120,17,26,24,23,120,16,26,24,23,115,15,26,24,23,110,14,26,24,23,105,13,26,24,23,"
                            + "100,12,26,24,23,95,11,26,24,23,90,10,26,24,23,85,9,26,24,23,80,8,26,23,23,80,8,26,22,23,80,8,26,21,23,"
                            + "75,7,25,20,23,75,7,25,19,23,70,6,24,18,23,70,6,23,17,23,65,5,22,16,22,65,5,22,15,22,60,19,21,14,21,"
                            + "60,19,20,13,20,60,19,20,12,20,55,4,19,11,19,55,4,19,10,19,50,3,18,9,18,50,3,17,8,17,50,3,17,7,17,"
                            + "45,2,16,6,16,45,2,16,5,16,40,1,15,4,15,40,1,14,3,14,35,0,13,2,13,35,0,12,1,13,30,0,11,0,12,30,0,11,0,11,"
                            + "25,0,10,0,10,25,0,9,0,10,20,0,8,0,9,20,0,8,0,8,15,0,7,0,7,15,0,6,0,7,10,0,5,0,6,10,0,5,0,5,5,0,4,0,4,"
                            + "5,0,3,0,4,0,0,2,0,3,0,0,1,0,2,0,0,0,0,1,0,0,0,0,0";
                } else if (9 < floAge && floAge <= 10) {
                    strStandard = "120,19,26,24,23,115,18,26,24,23,115,17,26,24,23,110,16,26,24,23,105,15,26,24,23,100,14,26,24,23,"
                            + "95,13,26,24,23,90,12,26,24,23,85,11,26,23,23,85,11,26,22,23,80,10,26,21,23,80,10,26,20,23,75,9,26,19,23,"
                            + "75,9,26,18,23,75,9,26,17,23,70,8,25,16,23,70,8,24,15,23,65,7,23,14,22,65,6,23,13,22,60,5,22,12,21,"
                            + "60,5,21,11,20,60,5,21,11,20,55,4,20,10,19,55,4,20,9,18,55,4,20,8,18,50,3,19,7,17,50,3,18,6,16,"
                            + "50,3,18,6,16,45,2,17,5,15,45,2,17,4,14,40,1,16,3,13,40,1,15,2,12,35,0,14,1,11,35,0,14,1,10,35,0,14,1,9,"
                            + "30,0,13,0,8,30,0,12,0,7,25,0,11,0,6,25,0,11,0,5,20,0,10,0,4,20,0,10,0,3,15,0,9,0,2,15,0,8,0,1,"
                            + "10,0,7,0,0,5,0,6,0,0,5,0,5,0,0,0,0,4,0,0,0,0,3,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0";
                } else if (10 < floAge && floAge <= 11) {
                    strStandard = "105,19,26,24,23,100,18,26,24,23,95,17,26,24,23,95,16,26,24,23,90,15,26,24,23,85,14,26,24,23,"
                            + "85,13,26,24,23,80,12,26,23,23,75,11,26,22,23,75,10,26,21,23,75,10,26,20,23,70,9,25,19,23,"
                            + "70,9,25,18,23,65,8,24,17,22,65,7,23,16,22,65,7,23,15,22,60,6,22,14,21,60,6,21,13,20,60,6,21,13,19,"
                            + "55,5,20,12,18,55,5,19,11,17,50,4,18,10,16,50,3,17,9,15,50,3,17,8,14,45,2,16,7,13,45,2,15,6,12,"
                            + "40,1,14,5,11,40,1,13,4,10,40,1,13,3,9,35,0,12,2,8,35,0,11,1,7,35,0,11,1,6,30,0,10,0,5,30,0,9,0,4,"
                            + "25,0,8,0,3,25,0,7,0,2,25,0,7,0,1,20,0,6,0,0,20,0,5,0,0,15,0,4,0,0,15,0,3,0,0,10,0,2,0,0,10,0,1,0,0,5,0,0,0,0";
                } else if (11 < floAge && floAge <= 12) {
                    strStandard = "120,18,26,24,23,115,17,26,24,23,110,16,26,24,23,105,15,26,24,23,100,14,26,24,23,95,13,26,24,23,"
                            + "90,12,26,24,23,90,11,26,24,23,85,10,26,24,23,80,9,26,23,23,75,8,26,22,23,75,8,26,21,23,70,7,25,20,22,"
                            + "70,7,25,19,22,70,7,25,18,22,65,6,24,17,21,65,6,23,16,20,60,5,22,15,19,60,5,21,14,18,60,5,21,14,17,"
                            + "55,4,20,13,16,55,4,20,12,15,55,4,20,11,15,50,3,19,10,14,50,3,18,9,13,45,2,17,8,12,45,2,17,7,11,"
                            + "40,1,16,6,10,40,1,15,5,9,35,0,14,4,8,35,0,14,3,8,35,0,14,2,7,30,0,13,1,6,30,0,12,1,5,25,0,11,0,4,"
                            + "25,0,11,0,3,25,0,11,0,2,20,0,10,0,1,20,0,9,0,1,15,0,8,0,0,15,0,7,0,0,10,0,6,0,0,5,0,5,0,0,"
                            + "5,0,4,0,0,0,0,3,0,0,0,0,2,0,0,0,0,1,0,0,0,0,0,0,0";
                } else if (12 < floAge && floAge <= 13) {
                    strStandard = "105,19,26,24,23,100,18,26,24,23,95,17,26,24,23,95,16,26,24,23,90,15,26,24,23,85,14,26,24,23,"
                            + "80,13,26,24,23,80,12,26,24,23,75,11,26,23,23,75,11,26,22,23,75,11,26,21,23,70,10,25,20,23,"
                            + "70,9,25,19,23,65,8,24,18,22,65,8,23,17,21,65,8,23,16,21,60,7,22,15,20,60,7,21,14,19,60,7,21,14,18,"
                            + "55,6,20,13,17,55,5,19,12,16,55,5,19,12,16,50,4,18,11,15,50,4,17,10,14,50,4,17,9,13,45,3,16,8,12,"
                            + "45,2,15,7,11,40,1,14,6,10,40,1,13,5,9,40,1,13,4,8,35,0,12,3,7,35,0,11,2,6,30,0,10,1,5,30,0,9,1,4,"
                            + "25,0,8,0,3,25,0,7,0,2,25,0,7,0,1,20,0,6,0,0,20,0,5,0,0,15,0,4,0,0,15,0,3,0,0,10,0,2,0,0,10,0,1,0,0,5,0,0,0,0";
                } else if (13 < floAge && floAge <= 14) {
                    strStandard = "115,19,26,24,23,110,18,26,24,23,105,17,26,24,23,100,16,26,24,23,100,15,26,24,23,"
                            + "95,14,26,24,23,90,13,26,24,23,85,12,26,24,23,80,11,26,23,23,75,10,26,22,23,75,9,26,21,23,70,8,25,20,22,"
                            + "70,8,25,19,21,70,8,25,18,21,65,7,24,17,20,65,7,23,16,20,65,7,23,16,19,60,6,22,15,18,60,6,21,14,17,"
                            + "55,5,20,13,16,55,5,19,12,15,55,5,18,11,15,50,4,17,10,14,50,3,17,9,13,50,3,16,9,13,45,2,15,8,12,"
                            + "45,2,14,7,12,45,2,14,6,11,40,1,13,5,10,40,1,13,4,10,40,1,12,4,9,35,0,11,3,8,35,0,11,2,7,35,0,10,1,7,"
                            + "30,0,9,0,6,30,0,8,0,5,25,0,7,0,4,25,0,6,0,3,25,0,5,0,3,20,0,4,0,2,20,0,3,0,1,15,0,2,0,0,15,0,1,0,0,10,0,0,0,0";
                } else {
                    strStandard = "120,19,26,24,23,115,18,26,24,23,110,17,26,24,23,105,16,26,24,23,100,15,26,24,23,95,14,26,24,23,"
                            + "90,13,26,24,23,85,12,26,24,23,85,11,26,24,23,80,10,26,24,23,75,9,25,23,23,70,8,24,22,22,70,8,24,21,21,"
                            + "65,7,23,20,20,65,7,23,19,20,65,7,23,18,19,60,6,22,17,18,60,6,21,16,17,60,6,21,15,17,55,5,20,14,16,"
                            + "55,5,19,13,15,55,5,19,12,15,50,4,18,11,14,50,3,18,10,13,50,3,18,9,13,45,2,17,8,12,45,2,16,7,12,"
                            + "45,2,16,6,11,40,1,15,5,10,40,1,15,4,10,40,1,15,3,9,35,0,14,2,8,35,0,13,1,7,30,0,12,0,6,30,0,11,0,5,"
                            + "25,0,10,0,4,25,0,10,0,3,20,0,9,0,2,20,0,8,0,1,15,0,7,0,0,15,0,6,0,0,10,0,5,0,0,5,0,4,0,0,5,0,3,0,0,"
                            + "0,0,2,0,0,0,0,1,0,0,0,0,0,0,0";
                }
            }

            // “标准分”
            strSubA = strStandard.split(",");
            for (i = 0; i < 4; i++) {
                for (j = 0; j < strSubA.length + 1; j += 5) {
                    if (vFactorA[i][0] >= Integer.valueOf(strSubA[j + i + 1])) {
                        vFactorA[i][1] = Integer.valueOf(strSubA[j]);
                        break;
                    }
                }
            }

            // 按标准分得到“指导意见”
            float[] sngNumA = { 63.4f, 56.7f, 43.3f, 36.6f };
            for (i = 0; i < vFactorA.length; i++) {
                vDoctorIdeaA[i] = "Xepq." + String.valueOf(i + 1) + ".5";
                for (j = 0; j < sngNumA.length; j++) {
                    if (vFactorA[i][1] >= sngNumA[j]) {
                        vDoctorIdeaA[i] = "Xepq." + String.valueOf(i + 1) + "." + String.valueOf(j + 1);
                        break;
                    }
                }
            }

            ClsScore.Xepq xepq = new ClsScore.Xepq();
            xepq.setJsz_o(vFactorA[0][0]);
            xepq.setJsz_s(vFactorA[0][1]);
            xepq.setJsz_d(vDoctorIdeaA[0]);

            xepq.setNwx_o(vFactorA[1][0]);
            xepq.setNwx_s(vFactorA[1][1]);
            xepq.setNwx_d(vDoctorIdeaA[1]);

            xepq.setSjz_o(vFactorA[2][0]);
            xepq.setSjz_s(vFactorA[2][1]);
            xepq.setSjz_d(vDoctorIdeaA[2]);

            xepq.setYscd_o(vFactorA[3][0]);
            xepq.setYscd_s(vFactorA[3][1]);
            xepq.setYscd_d(vDoctorIdeaA[3]);

            result.setObject(xepq);
            return result;
        } catch (ArithmeticException e) {
            result.setMessage(e.toString());
            return result;
        }
    }

}
